package org.jeecg.modules.incomingRecord.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 入库信息表
 * @Author: jeecg-boot
 * @Date:   2025-04-15
 * @Version: V1.0
 */
@Data
@TableName("incoming_record")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="incoming_record对象", description="入库信息表")
public class IncomingRecord implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private java.lang.String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private java.util.Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private java.lang.String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private java.lang.String sysOrgCode;
	/**批次号*/
	@Excel(name = "批次号", width = 15)
    @ApiModelProperty(value = "批次号")
    private java.lang.String batchId;
	/**供应商*/
	@Excel(name = "供应商", width = 15)
    @ApiModelProperty(value = "供应商")
    private java.lang.String supplier;
	/**入库时间*/
	@Excel(name = "入库时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "入库时间")
    private java.util.Date entryTime;
	/**入库液罐*/
	@Excel(name = "入库液罐", width = 15, dictTable = "storage_tank", dicText = "name", dicCode = "id")
	@Dict(dictTable = "storage_tank", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "入库液罐")
    private java.lang.String tankId;
	/**入库数量*/
	@Excel(name = "入库数量", width = 15)
    @ApiModelProperty(value = "入库数量")
    private java.math.BigDecimal quantity;

    /**类型*/
    @Excel(name = "类型", width = 15, dicCode = "material_type")
    @ApiModelProperty(value = "类型")
    @Dict(dicCode = "material_type")
    private java.lang.Integer materialType;
    /**名称*/
    @Excel(name = "名称", width = 15)
    @ApiModelProperty(value = "名称")
    private java.lang.String name;
    /**物料*/
    @Excel(name = "物料", width = 15, dictTable = "material_base", dicText = "name", dicCode = "id")
    @Dict(dictTable = "material_base", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "物料")
    private java.lang.String materialId;

    /**原料来源*/
    @Excel(name = "原料来源", width = 15)
    @ApiModelProperty(value = "原料来源")
    private java.lang.String source;
    /**随车报告*/
    @Excel(name = "随车报告", width = 15)
    @ApiModelProperty(value = "随车报告")
    private java.lang.String onboardReport;
    /**登记id*/
    @ApiModelProperty(value = "登记id")
    private java.lang.String registrationId;
    /**车牌号*/
    @Excel(name = "车牌号", width = 15)
    @ApiModelProperty(value = "车牌号")
    private java.lang.String plateNo;
    /**检验信息*/
    @Excel(name = "检验信息", width = 15)
    @ApiModelProperty(value = "检验信息")
    private java.lang.String inspectionInfo;
    /**留样信息*/
    @Excel(name = "留样信息", width = 15)
    @ApiModelProperty(value = "留样信息")
    private java.lang.String leaveSampleInfo;

    /**经销商*/
    @Excel(name = "经销商", width = 15)
    @ApiModelProperty(value = "经销商")
    private java.lang.String dealer;
    /**生产商*/
    @Excel(name = "生产商", width = 15)
    @ApiModelProperty(value = "生产商")
    private java.lang.String manufacturer;

    /**入库开始时间*/
    @Excel(name = "入库开始时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "入库开始时间")
    private java.util.Date startTime;
    /**入库结束时间*/
    @Excel(name = "入库结束时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "入库结束时间")
    private java.util.Date endTime;
}
